The present invention relates generally to techniques for long term data archiving in a storage system. More particularly the present invention relates to a storage system and method for protecting data on a disk volume by managing a write pointer or a write protected area.
Conventionally, long term data archiving has been accomplished write once read many (WORM) storage media. Recently the need for long term data archiving has increased. This need has been made more acute, for example, by the passage of various regulations. These regulations include, for example, Regulations like SEC (Securities and Exchange Act) and 21 CFR (Code of Federal Regulations) Part 11 of the Food and Drug Administration act. These regulations require regulated companies to keep data for a long term. An important factor in such regulations is that the data must not be changed during the retention period. As the result, the data need to be stored on WORM storage media.
Logical device (LDEV) Guard disk subsystems have WORM capability. With this capability, if a volume is set to be write-protected, no one can write or change any data stored on the volume. Since data need not to be kept after an expiration of a period required by the regulations, LDEV guard provides a retention period for a volume. After expiration of the retention period, users can then write and change data on the volume. The storage system has an internal timer for this purpose.
However, some regulations require a strict WORM implementation where the WORM setting cannot be altered by anyone in the world. Similarly, such strict WORM implementation requires that the retention period or the internal timer in the storage system cannot be altered.
Further, LDEV does not allow for granularity of Write-Protected Area. Particularly, because LDEV guard protects data at a volume level, sometimes it's not useful. The typical size of a volume is several GBytes. On the other hand, the typical size of a file which users want to archive is tens of hundreds of MBytes. As the result, the volume can't be set to a write-protected state until the volume is filled by many files. During this period, there is no write-protection for files in the volume.
Still further, the large size of the data structure can be a problem. Because there are a large number of disk blocks in the disk array, when the storage system provides a write protection at a disk block level, the size of a data structure that tracks the write protected disk blocks and the retention period for these write protected disk blocks becomes very large. Sometime the size of the data structure requires a large amount of memory in the storage system, thereby increasing the cost of the storage system.